Lecture 2 - IP Addressing

مقدمة

  • الـ IP Address (Internet Protocol Address) هو label رقمي بيتد لكل جهاز متصل بالشبكة عشان يتعرف عليه
  • زي عنوان البيت بالظبط — البيانات عشان توصللك محتاجة تعرف عنوانك
  • من غيره مفيش تواصل بين الأجهزة على الشبكة


IP Address Structure

مثال

  • ا IP: 172.16.4.20
  • ا Network Portion: 172.16 — Host Portion: 4.20
  • ا IP: 172.16.4.32
  • ا Network Portion: 172.16 — Host Portion: 4.32
  • الاتنين على نفس الـ logical network لأن الـ network portion متطابق


Binary to Decimal Conversion

كل bit في الـ octet ليه قيمة:

ا 128 64 32 16 8 4 2 1
من Binary لـ Decimal:

00001010 = 8 + 2 = 10

00010111 = 16 + 4 + 2 + 1 = 23

10101010 = 128 + 32 + 8 + 2 = 170

من Decimal لـ Binary:
Note

امثله عشان تتدرب:

  • 00001010 00000001 00010111 0001001110.1.23.19
  • 10101010 01000001 00010010 10101100170.65.18.172

IPv4 vs IPv6

الخاصية IPv4 IPv6
** Bit Length** 32 bits 128 bits
عدد العناوين ~4.3 مليار 340 undecillion (رقم ضخم مش هيخلص)
طريقة الكتابة Decimal, 4 numbers (0–255) Hexadecimal, 8 groups (0–FFFF)
مثال 192.168.1.1 2001:0db8:85a3:0000:0000:8a2e:0370:7334
الاستخدام Legacy networks, معظم أجهزة الإنترنت Modern networks, IoT, future-proofing

Public vs Private IP

ا Public IP ا Private IP
بيوصل للإنترنت مباشرة بيستخدم جوه الشبكة المحلية (LAN) بس
Unique على مستوى العالم مكرر في شبكات محلية كتير — مش routable على الإنترنت
بياخده من ISP بياخده من الـ router (DHCP)
Private IP ranges:

Static vs Dynamic IP

ا Static IP ا Dynamic IP
ثابت — مش بيتغير متغير — بيتغير مع الوقت
مناسب للسيرفرات والأجهزة الثابتة مناسب للأجهزة العادية (البيت، الموبايل)
بتعيّنه يدوي بياخده تلقائي من DHCP

Subnet Mask

مثال

IP:         192.168.1.10
Subnet:     255.255.255.0
Binary IP:  11000000.10101000.00000001.00001010
Binary Sub: 11111111.11111111.11111111.00000000

  • Network = 192.168.1 (أول 3 octets)
  • Host = 10 (آخر octet)
  • الأجهزة الممكنة في الشبكة دي: 192.168.1.1 لـ 192.168.1.254


IPv4 Classes (Classful Addressing)

الـ Class ا First Octet Range استخدامه
Class A 1 – 126 شبكات ضخمة (شركات كبيرة، جامعات)
Class B 128 – 191 شركات متوسطة/كبيرة
Class C 192 – 223 شركات صغيرة، منازل، مكاتب
Class D 224 – 239 Multicasting (streaming, routing)
Class E 240 – 255 Experimental / عسكري / أبحاث
توزيع Network vs Host حسب الـ Class:
الـ Class ا Network ا Host
A أول octet تالت octets
B أول 2 octets آخر 2 octets
C أول 3 octets آخر octet
ملاحظات

  • ا 127.x.x.x محجوزة للـ Loopback (troubleshooting)
  • لو أول octet = 127 → ده localhost عشان تختبر الشبكة على جهازك


أمثلة عملية — تحديد الـ Class وتقسيم Network/Host

المثال 1: 10000001 00001011 00001011 11101111
المثال 2: 11000001 10000011 00011011 11111111

أخطاء شائعة في IPv4


حساب عدد العناوين في Range

1. إزاي تعرف عدد العناوين لما يكون عندك أول وآخر IP؟

مثال: 146.102.29.0 ← 146.102.32.255

الخطوات:

  146 . 102 .  32 . 255
- 146 . 102 .  29 . 0
─────────────────────
    0 .   0 .   3 . 255

الناتج طلع كده ازاي ؟ لأن 255 - 0 = 255، و 32 - 29 = 3.

دلوقتي عندنا الناتج = 0.0.3.255.

(0 × 256³) + (0 × 256²) + (3 × 256¹) + (255 × 256⁰)
= 0 + 0 + 768 + 255
= 1023

2. إزاي تعرف آخر IP لما يكون عندك أول IP وعدد العناوين؟

مثال: أول IP عباره عن 14.11.45.96 و عدد العناوين = 32

الخطوات:

لما عدد العناوين = 32، يبقى الفرق بين الأول والآخر = 32 - 1 = 31 يعني 0.0.0.31 .

دلوقتي اجمع الـ IP الأول مع الرقم ده octet-by-octet من اليمين:

  14 . 11 . 45 .  96
+  0 .  0 .  0 .  31
─────────────────────
  14 . 11 . 45 . 127

ليه بقى 127؟ لأن 96 + 31 = 127. ولو كان الناتج أكبر من 255، كنا هنعمل carry للـ octet اللي قبله (زي الجمع العادي).

إذن آخر IP = 14.11.45.127

وده منطقي لأن الـ IPs هتكون من 96 لـ 127 = 32 عنوان بالضبط.


الخلاصة


Nour Eldeen Mahmoud


Powered by Forestry.md